home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / documents / RFC / rfc749.txt < prev    next >
Text File  |  1994-08-01  |  9KB  |  228 lines

  1.  
  2. NWG/RFC  749                                  BSG 26-Sep-78 13:13  45499
  3. Network Working Group                                  Bernard Greenberg
  4. Request for Comments 749                                     MIT-Multics
  5. NIC 45499                                              18 September 1978
  6.  
  7.                       Telnet SUPDUP-OUTPUT Option
  8.  
  9. 1.  Command name and code.
  10.  
  11.    SUPDUP-OUTPUT   22
  12.  
  13. 2.  Command meanings.
  14.  
  15.    IAC WILL SUPDUP-OUTPUT
  16.  
  17.    The  sender   of  this  command   REQUESTS   permission  to  transmit
  18.    SUPDUP-OUTPUT format messages over the TELNET connection.
  19.  
  20.    IAC WON'T SUPDUP-OUTPUT
  21.  
  22.    The sender  of this command  STATES  that  he  will  no  longer  send
  23.    SUPDUP-OUTPUT format messages over the TELNET connection.
  24.  
  25.    IAC DO SUPDUP-OUTPUT
  26.  
  27.    The sender  of this command  grants  the receiver  permission to send
  28.    SUPDUP-OUTPUT format messages over the TELNET connection.
  29.  
  30.    IAC DON'T SUPDUP-OUTPUT
  31.  
  32.    The sender  of this  command  DEMANDS  that  the  receiver  not  send
  33.    SUPDUP-OUTPUT format messages over the TELNET connection.
  34.  
  35.    IAC SB SUPDUP-OUTPUT 1 <terminal-parameters> IAC SE
  36.  
  37.    The sender of this command (which must be the TELNET user process) is
  38.    supplying   information  describing  the  capabilities  of  the  user
  39.    process' terminal.
  40.  
  41.    IAC SB SUPDUP-OUTPUT 2 n TD1 TD2 ..  TDn SCx SCy IAC SE
  42.  
  43.    The sender  of this command, which must be the TELNET server process,
  44.    is sending  explicit  screen control information to be carried out by
  45.    the user TELNET process.
  46.  
  47. 3.  Default.
  48.  
  49.    WON'T SUPDUP-OUTPUT
  50.  
  51.    DON'T SUPDUP-OUTPUT
  52.  
  53.    i.e., the SUPDUP-OUTPUT format messages may not be transmitted.
  54.  
  55.  
  56.  
  57. Greenberg                                                       [page 1]
  58.  
  59. NWG/RFC  749                                  BSG 26-Sep-78 13:13  45499
  60. Telnet SUPDUP-OUTPUT Option
  61.  
  62.  
  63.  
  64. 4.  Motivation for the option.
  65.  
  66.    The SUPDUP-OUTPUT  protocol  provides  a means to access  the virtual
  67.    display  support provided by the SUPDUP protocol (see RFC 734) within
  68.    the context  of a standard  TELNET connection. This allows occasional
  69.    display-oriented  programs  at non-display-oriented  servers  to take
  70.    advantage  of the standardized  display  support  provided by SUPDUP.
  71.    This cannot  be done with the standard  SUPDUP protocol or the TELNET
  72.    SUPDUP option (RFC 736), for they both require that all communication
  73.    after the negotiation  to  use  SUPDUP  has  been  completed  proceed
  74.    according  to the protocol  of RFC 734.   This places upon the server
  75.    total responsibility  for screen  management  for the duration of the
  76.    connection,  which, by hypothesis, the non-display oriented server is
  77.    not willing to accept.
  78.  
  79.    User TELNET  programs  at display-oriented  user hosts provide  local
  80.    screen  management  by mapping  the NVT commands of TELNET into local
  81.    screen   management   commands;   often,   this  involves  scrolling,
  82.    end-of-page  processing, line clearing etc.  The SUPDUP-OUTPUT option
  83.    allows  a display-oriented  application program at the server side to
  84.    take over  screen  management  explicitly,  via  the  SUPDUP  display
  85.    control repertoire.  TELNET remains in effect throughout.  The IAC IP
  86.    and other TELNET commands are still valid.
  87.  
  88.    By means of the SUPDUP-OUTPUT  option,  display-oriented programs can
  89.    run  on  the  server   host,  and  control  the  user  host's  screen
  90.    explicitly.   The user TELNET process sends a description of the user
  91.    terminal  (as specified in RFC 734) to the server TELNET process as a
  92.    subnegiotiation  block when the SUPDUP-OUTPUT  negotiation  has  been
  93.    successfully  completed.   The server  TELNET  process sends explicit
  94.    screen  control commands via subnegotiation blocks to the user TELNET
  95.    process.
  96.  
  97. 5.  Description of the option.
  98.  
  99.    The SUPDUP-OUTPUT protocol may only be initiated by the server TELNET
  100.    process.   A server  TELNET  process wishing to take advantage of the
  101.    SUPDUP-OUTPUT  protocol will initiate a negotiation for it by sending
  102.    IAC WILL SUPDUP-OUTPUT.   The user  TELNET  process  must  accept  or
  103.    refuse  the offer by  sending  IAC  DO  SUPDUP-OUTPUT  or  IAC  DON'T
  104.    SUPDUP-OUTPUT.
  105.  
  106.    If the user  TELNET  process  agrees  to  support  the  SUPDUP-OUTPUT
  107.    option,   it  must  follow   the  sending  of  IAC  DO  SUPDUP-OUTPUT
  108.    immediately   with  a  description  of  the  user's  terminal.   This
  109.    information  is described in RFC 734 as the "terminal parameters." It
  110.    is to be sent as a series  of six-bit  bytes,  one byte per eight-bit
  111.  
  112.  
  113.  
  114. Greenberg                                                       [page 2]
  115.  
  116. NWG/RFC  749                                  BSG 26-Sep-78 13:13  45499
  117. Telnet SUPDUP-OUTPUT Option
  118.  
  119.  
  120.  
  121.    TELNET  data byte.   These  words may or may not contain the optional
  122.    line speed and graphics capabilities parameters described by RFC 747;
  123.    the first  six bytes  specify  the count of 36-bit words to follow as
  124.    described by RFC 734.
  125.  
  126.    The terminal  parameter block will be sent as a subnegotiation of the
  127.    SUPDUP-OUTPUT option:
  128.  
  129.    IAC SB SUPDUP-OUTPUT 1 byte1 byte2 ... byten IAC SE
  130.  
  131.    The byte of "1"  is a command  code,  for compatibility  with  future
  132.    extensions.   Upon receipt  of the terminal  parameter block from the
  133.    user TELNET process, the server TELNET process may send SUPDUP-OUTPUT
  134.    blocks as described below.
  135.  
  136.    The server  TELNET  process  can specify explicit control of the user
  137.    host's  screen  by  the  sending  of  subnegotiation  blocks  of  the
  138.    SUPDUP-OUTPUT  option.   The format  of such  a  block,  as  seen  in
  139.    eight-bit TELNET data bytes, is:
  140.  
  141.    IAC SB SUPDUP-OUTPUT 2 N TD1 TD2 TD3 ... TDn SCx SCy IAC SE
  142.  
  143.    The byte of "2"  is a command  code,  for compatibility  with  future
  144.    extensions.  The TDm bytes are the "%TDCODEs" and printing characters
  145.    of SUPDUP  output  of RFC 734.  N is a byte containing a count of the
  146.    number  of TDm's in this transmission.  N may be zero, and may not be
  147.    greater than 254 (decimal).  SCx and SCy are two bytes specifying the
  148.    anticipated horizontal and vertical (respectively) coordinates of the
  149.    cursor of the user host's screen after the latter has interpreted all
  150.    the %TDCODEs in this transmission.
  151.  
  152.    The motivation  for the SCx SCy screen  position  specification is to
  153.    allow hosts running the ITS operating system, which will transmit the
  154.    TDCODEs  directly  into the local output  system, to assert the "main
  155.    program  level"  screen  position  without  any interpretation of the
  156.    transmitted TDCODE sequence by the user TELNET program.
  157.  
  158.    The user TELNET  process must manage the position of the local cursor
  159.    with respect  to standard  TELNET NVT commands and output, and SUPDUP
  160.    OUTPUT  transmissions.   The user TELNET  process may assume that the
  161.    server  TELNET  process is managing both NVT and SUPDUP-OUTPUT output
  162.    in an integrated way.
  163.  
  164.    The SUPDUP-OUTPUT  option makes no statement about how input is sent;
  165.    this may be negotiated via other options.  By default, NVT input will
  166.    be used.   The user-to-server  screen  management commands of RFC 734
  167.    are NOT implicitly handled by IAC WILL SUPDUP-OUTPUT.
  168.  
  169.  
  170.  
  171. Greenberg                                                       [page 3]
  172.  
  173. NWG/RFC  749                                  BSG 26-Sep-78 13:13  45499
  174. Telnet SUPDUP-OUTPUT Option
  175.  
  176.  
  177.  
  178.    In the absence  of the transmission  of SUPDUP-OUTPUT  subnegotiation
  179.    blocks,  a TELNET  connection operating with the SUPDUP-OUTPUT option
  180.    in effect is indistinguishable from a normal TELNET connection.  Thus
  181.    IAC WON'T SUPDUP-OUTPUT  is highly  optional,  and if received by the
  182.    user TELNET  process,  should  only be used to cause  a diagnostic if
  183.    SUPDUP-OUTPUT  subnegotiation  blocks  are subsequently received.  If
  184.    received,  the user TELNET  process  should  respond  with IAC  DON'T
  185.    SUPDUP OUTPUT.
  186.  
  187.    Because  of the optional  nature of IAC WON'T SUPDUP-OUTPUT, the user
  188.    TELNET  process  should  be prepared  to send the terminal  parameter
  189.    subnegotiation  block each time IAC WILL SUPDUP-OUTPUT  is  received,
  190.    i.e., even if the user TELNET process believes SUPDUP-OUTPUT to be in
  191.    effect.
  192.  
  193.    The %TDORS  (output  reset)  code may not be sent in a  SUPDUP-OUTPUT
  194.    transmission.   The user TELNET  program may assume that no byte in a
  195.    subnegotiation block will be 255 (decimal).
  196.  
  197.    No multi-byte  TDCODE  sequence  (e.g.,  %TDMOV, %TDILP) may be split
  198.    across SUPDUP-OUTPUT subnegotiation blocks.
  199.  
  200. References:
  201.  
  202.    Crispin, Mark:
  203.  
  204.       "SUPDUP Display Protocol", RFC 734, 7 October 1977, NIC 44213.
  205.  
  206.    Crispin, Mark:
  207.  
  208.       "TELNET SUPDUP Option", RFC 736, 31 October 1977, NIC 44213.
  209.  
  210.    Crispin, Mark:
  211.  
  212.       "Recent  Extensions  to the SUPDUP  Protocol",  RFC 747,  21 March
  213.       1978, NIC 44015.
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228. Greenberg                                                       [page 4]